import { parse } from 'node-html-parser';

const html = `<div>
<h1>模板页面</h1>
<h3>web端</h3>
<h5>登录页面</h5>
<a style="color: red;" href="./login.html">登录1</a>
<a style="color: red;" href="./login2.html">登录2</a>
<a style="color: red;" href="./login3.html">登录3</a>
<h5>首页</h5>
<a style="color: red;" href="./home.html">首页1</a>
<a style="color: red;" href="./home2.html">首页2</a>
<a style="color: red;" href="./home3.html">首页3</a>
<h3>h5端</h3>
<h5>登录页面</h5>
<a style="color: red;" href="./h5-login.html">登录</a>
<h5>首页</h5>
<a style="color: red;" href="./h5-home.html">首页</a>
<h3>IE浏览器控件使用</h3>
<a style="color: red;" href="./ie.html">IE控件</a>
<h3>导出</h3>
<h5>使用开发新页面的方式进行导出数据</h5>
导出 excel 文件<br>需要在package-service.json里的dependencies里添加<br>\`
"jsreport-html-to-xlsx": "latest",
"jsreport-xlsx": "latest",
"inline-source": "latest",
"jsreport-core": "latest"
\`<br>
在package.json里的dependencies里添加<br>\`
"jsreport-html-to-xlsx": "latest",
"jsreport-xlsx": "latest",
"inline-source": "latest",
"jsreport-core": "latest"
\`<br>

导出 excel 文件<br>需要在新页面的服务端进行渲染数据，并且渲染的数据使用‘table’标签。使用新页面方式导出数据的，在访问此页面的时候将html后缀修改为xlsx。(注意在开发是进行导出测试，访问的端口号为8889)<br>
<a style="color: red;" href="http://127.0.0.1:8889/export.xlsx">excel新页面导出</a><br>
如果想下载的文件命名，可以传入参数attachment，参数值则为文件名称（需包含文件后缀）<br>
<a style="color: red;" href="http://127.0.0.1:8889/export.xlsx?attachment=test.xlsx">excel新页面导出，命名为test.xlsx</a>
<br><br><br>
在线预览PDF文件<br>需要在package-service.json里的dependencies里添加<br>\`
"jsreport-phantom-pdf": "latest",
"inline-source": "latest",
"jsreport-core": "latest"
\`<br>
在package.json里的dependencies里添加<br>\`
"jsreport-phantom-pdf": "latest",
"inline-source": "latest",
"jsreport-core": "latest"
\`<br>

在线预览PDF文件<br>需要在新页面的服务端进行渲染数据。使用新页面方式导出数据的，在访问此页面的时候将html后缀修改为pdf。(注意在开发是进行导出测试，访问的端口号为8889)<br>
<a style="color: red;" href="http://127.0.0.1:8889/export.pdf">在线预览PDF文件</a><br>

默认预览的pdf文件为竖版，可以修改为横版，传入参数orientation（pdf版式('landscape': 横版,'portrait': 竖版;默认是竖版)）<br>
<a style="color: red;" href="http://127.0.0.1:8889/export.pdf?orientation=landscape">在线预览PDF文件，横版</a><br>

如果下载文件并命名，可以传入参数attachment，参数值则为文件名称（需包含文件后缀）<br>
<a style="color: red;" href="http://127.0.0.1:8889/export.pdf?attachment=test.pdf">下载PDF文件，命名为test.pdf</a>

<br><br><br>
下载 docx 文件<br>需要在package-service.json里的dependencies里添加<br>\`
"inline-source": "latest",
"jsreport-core": "latest",
"jsreport-html-embedded-in-docx": "latest"
\`<br>
在package.json里的dependencies里添加<br>\`
"inline-source": "latest",
"jsreport-core": "latest",
"jsreport-html-embedded-in-docx": "latest"
\`<br>

下载 docx 文件<br>需要在新页面的服务端进行渲染数据。使用新页面方式导出数据的，在访问此页面的时候将html后缀修改为docx。(注意在开发是进行导出测试，访问的端口号为8889)<br>
<a style="color: red;" href="http://127.0.0.1:8889/export.docx">下载docx文件</a><br>

如果下载文件并命名，可以传入参数attachment，参数值则为文件名称（需包含文件后缀）<br>
<a style="color: red;" href="http://127.0.0.1:8889/export.docx?attachment=test.docx">下载docx文件，命名为test.docx</a>

<h5>通过写服务导出文件</h5>
通过服务导出文件暂时只有 excel 文件，使用的为第三方库‘exceljs’需要在package-service.json里的dependencies里添加<br>\`
"exceljs": "latest"
\`<br>
在package.json里的dependencies里添加<br>\`
"exceljs": "latest"
\`<br>
导出服务的参数msg的数据类型为‘ICommonParams’，引入‘import { ICommonParams } from '@feidao/service/interfaces';’；URL传入的参数在msg.query中获取。
<br>
导出服务通过URL访问进行下载文件，需在feidao-server.json中进行配置<br>\`
{
	"URL": "excel-template",
	"METHOD": "get",
	"SERVICE": "dataservice.nodejs",
	"DATA": {
		"modelid": "custom::js_export/excel-template"
	}
},
\`<br>
属性URL对应的值则为URL访问路径，此导出访问路径为'127.0.0.1:8889/excel-template'(开发模式下)，METHOD和SERVICE两个值无需更改，METHOD为'get'，URL直接访问的请求方式为'get'，SERVICE为'dataservice.nodejs',在项目中写的服务全部为nodejs服务；modelid的值为服务名称（包含服务路径），不过modelid的值有固定前缀'custom::js_'；示例中'export/excel-template'标识服务路径为'service/src/export/excel-template.ts'。
<br>
<br>
简单的导出服务示例
<br>
1. 导出模板（只有表头没有数据）<a style="color: red;" href="http://127.0.0.1:8889/excel-template">文件下载</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a style="color: red;" href="./export-code.html?flag=1">代码示例</a>
<br>
2. 导出简单数据（表头数据）<a style="color: red;" href="http://127.0.0.1:8889/excel-data">文件下载</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a style="color: red;" href="./export-code.html?flag=2">代码示例</a>
<br>
3. 合并单元格+单元格数据验证（序列）<a style="color: red;" href="http://127.0.0.1:8889/excel-data-merge">文件下载</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a style="color: red;" href="./export-code.html?flag=3">代码示例</a>
<br>
4. 单元格数据验证+多页签+数据级联<a style="color: red;" href="http://127.0.0.1:8889/excel-cell-validation">文件下载</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a style="color: red;" href="./export-code.html?flag=4">代码示例</a>
<br>
<br>
一次导出多个文件并进行压缩<br>
导出多个文件并压缩只能通过服务进行导出<br>
导出服务通过URL访问进行下载文件，需在feidao-server.json中进行配置<br>
暂时导出的文件类型只有excel、docx、pdf。<br>
1. 导出的压缩文件为docx<a style="color: red;" href="http://127.0.0.1:8889/export-docx-zip">文件下载</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a style="color: red;" href="./export-code.html?flag=5">代码示例</a><br>
2. 导出的压缩文件为pdf<a style="color: red;" href="http://127.0.0.1:8889/export-pdf-zip">文件下载</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a style="color: red;" href="./export-code.html?flag=6">代码示例</a><br>
3. 导出的压缩文为excel（使用第三方库）<a style="color: red;" href="http://127.0.0.1:8889/export-excel-zip">文件下载</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a style="color: red;" href="./export-code.html?flag=7">代码示例</a><br>
4. 导出的压缩文为excel（使用html中table标签）<a style="color: red;" href="http://127.0.0.1:8889/export-excel-td-zip">文件下载</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a style="color: red;" href="./export-code.html?flag=8">代码示例</a>
<br>
导出多个文件可以同时导出不同类型的文件到一个压缩包中
<br>
<br>
将文件服务器上的多个文件下载并压缩<br>
导出多个文件并压缩只能通过服务进行导出<br>
导出服务通过URL访问进行下载文件，需在feidao-server.json中进行配置<br>
导出文件服务器文件<a style="color: red;" href="http://127.0.0.1:8889/export-file">文件下载</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a style="color: red;" href="./export-code.html?flag=9">代码示例</a>
<br><br><br><br>
</div>`;

export default parse(html);
